OpenFlow network uses an architecture in which a control plane is separated from a forwarding plane. FIG. 1 is a schematic diagram of an architecture of OpenFlow network components. As shown in FIG. 1, the control plane of the OpenFlow network is implemented by an OpenFlow controller, and the forwarding plane of the OpenFlow network is implemented by an OpenFlow switch, and the OpenFlow protocol is operated between the OpenFlow controller and the OpenFlow switch. The OpenFlow controller issues a flow table and a group table to the OpenFlow switch by using the OpenFlow protocol through an OpenFlow channel, to achieve the objective of controlling data forwarding, and implement separation of the data forwarding and routing control.
According to rules of the OpenFlow protocol specification, since different OpenFlow switches may have different features, after the OpenFlow controller establishes a control connection with the OpenFlow switch, the OpenFlow controller will obtain multiple types of features, which the OpenFlow switch has, by sending multiple types of feature information query messages to the OpenFlow switch. The multiple types of feature information query messages include switch features query messages, table features query messages and group features query messages, etc. When receiving each type of feature information query message sent by the OpenFlow controller, the OpenFlow switch will reply to the OpenFlow controller with the corresponding type of feature information reporting message, including switch features reporting messages, table features reporting messages and group features reporting messages, etc. One or more reported features of the OpenFlow switch include the maximum number of flow tables, the maximum capacity of each of the flow tables, the supported group table types, the maximum capacity of each type of group tables, the match field type that each level of the flow tables can support, the action type that each level of the flow tables can support, and so on. In addition, to obtain port information of the OpenFlow switch, the OpenFlow controller will also send a port information query message to the OpenFlow switch to obtain the port information, such as a port number, port rate, port status, etc., of each port of the OpenFlow switch.
Overlay network is a network type that is very widely used. FIG. 2 is a schematic diagram of a structure of the overlay network. As shown in FIG. 2, the overlay network contains two different types of network nodes, i.e., edge nodes and intermediate nodes. Customer devices are connected to the edge nodes to access the overlay network. The edge nodes will add outer encapsulations to all data packets entering the overlay network. The outer encapsulations contain outer source addresses and outer destination addresses for forwarding of the intermediate nodes. Herein, the outer source addresses point to local edge nodes that add the outer encapsulations, and the outer destination addresses point to remote edge nodes. After receiving the data packets with the added outer encapsulations, the remote edge nodes will firstly remove the outer encapsulations of the data packets, and then send the data packets, of which the outer encapsulations are removed, to the connected customer devices.
At present, the overlay network technology is used a lot in data center networks, and a large number of data center servers used as customer devices, are interconnected through the overlay network technology. There are a number of overlay network encapsulation protocols in the related art that have been standardized and have not been standardized yet, including Virtual Extensible Local Area Network (VxLAN) encapsulation specified in Request For Comments (RFC) 7348 issued by in the Internet Engineering Task Force (IETF), Transparent Interconnection of Lots of Links (Trill) encapsulation specified in RFC 6325, Generic User Datagram Protocol (UDP) Encapsulation specified in IETF drafts-ietf-nvo3-gue, Generic Network Virtualization Encapsulation (GENEVE) specified in IETF draft-ietf-nvo3-geneve, Provider Backbone Bridging (PBB) encapsulation specified in 802.1ah issued by Institute of Electrical and Electronics Engineers (IEEE), etc. Server resources of a data center may be leased to a number of different tenants, and the different tenants may ask to use different overly network encapsulation protocols to implement the interconnection of servers belonging to the tenants. For example, a tenant A asks to use the VxLAN encapsulation, and a tenant B asks to use the Trill encapsulation, and a tenant C asks to use the GUE encapsulation, and a tenant D asks to use the PBB encapsulation, etc. To meet the requirements described above, different line cards of the OpenFlow switch, which is used as overlay network nodes, containing multiple line cards need to be capable of supporting different overlay network encapsulation protocols, for example, a line card a supports the VxLAN encapsulation, and a line card b supports the Trill encapsulation, and a line card c supports the GUE encapsulation, and a line card d supports the PBB encapsulation, etc. According to the related art, the edge nodes that support the OpenFlow in the overlay network cannot implement reporting of different features of different line cards in the nodes to the OpenFlow controller respectively.
For the problem that the OpenFlow protocol cannot implement reporting of different features of different line cards in the OpenFlow switch to the OpenFlow controller respectively, an effective solution has not yet been put forward.